home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Languages / PowerMacOberon 1.2 / Text / Welcome.Text (.txt) < prev    next >
Oberon Text  |  1995-08-22  |  24KB  |  273 lines

  1. Syntax10.Scn.Fnt
  2. ParcElems
  3. Alloc
  4. Syntax16b.Scn.Fnt
  5. Syntax14b.Scn.Fnt
  6. Syntax12b.Scn.Fnt
  7. Syntax10b.Scn.Fnt
  8. Syntax10i.Scn.Fnt
  9. GraphicElems
  10. Alloc
  11. Syntax10.Scn.Fnt
  12. Point
  13. Execute
  14. Select
  15. Syntax10.Scn.Fnt
  16. Point
  17. Select
  18. Execute
  19. On systems with a
  20. single button mouse
  21. Point
  22. Select
  23. On systems with a
  24. two button mouse
  25. Execute
  26. Syntax12.Scn.Fnt
  27. StyleElems
  28. Alloc
  29. Indented
  30. Normal
  31. Indented
  32. Normal
  33. Indented
  34. Normal
  35. Indented
  36. Normal
  37. Indented
  38. Normal
  39. Indented
  40. Normal
  41. Rectangles
  42. Syntax10.Scn.Fnt
  43. viewer
  44. user track
  45. system track
  46. title bar
  47. (menu bar)
  48. Rectangles
  49. Syntax10.Scn.Fnt
  50. viewer
  51. PictElems
  52. Alloc
  53. dddddd
  54. ff33@
  55. ffffff
  56. ffff33
  57. ff33ff
  58. ff3333
  59. 33ffff
  60. 33ff33
  61. 3333ff
  62. 333333
  63. wwwwww
  64. UUUUUU
  65. DDDDDD
  66. """"""
  67. Indented
  68. Normal
  69. Indented
  70. Normal
  71. Indented
  72. Normal
  73. Indented
  74. Normal
  75. Syntax14m.Scn.Fnt
  76.     Syntax12i.Scn.Fnt
  77. Indented
  78. Normal
  79. Indented
  80. Normal
  81. Indented
  82. Normal
  83. Indented
  84. Normal
  85. Indented
  86. Normal
  87. PopupElems
  88. Alloc
  89. System
  90. Syntax10.Scn.Fnt
  91. System.Directory ^
  92. System.ShowDir
  93. System.Recall
  94. System.ShowModules
  95. System.ShowCommands ^
  96. System.State ^
  97. System.Watch
  98. System.Collect
  99. System.Time
  100. Syntax10.Scn.Fnt
  101. Edit.Store
  102. Edit.Print QuickDraw *
  103. Edit.Recall
  104. Edit.Locate
  105. Edit.Show ^
  106. Edit.Replace
  107. Edit.ReplaceAll
  108. Edit.Cut
  109. Edit.Copy
  110. Edit.Paste
  111. Edit.Clipboard
  112. IconElems
  113. ClockElems
  114. ETH Oberon
  115. Copyright (C) 1994 by ETH Zurich, Institute for Computer Systems.
  116. Oberon was ported to the PowerMacintosh at the University of Linz.
  117. -------------------------------------------------------------
  118. Permission to use, copy, modify and distribute this software and its documentation for any purpose is hereby granted without fee, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation, and that the name of ETH not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. ETH makes no representations about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty.
  119. ETH DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ETH BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
  120. -------------------------------------------------------------
  121. Getting started with Oberon
  122. This is a quick overview of the Oberon system. For further questions please refer to the user manual:
  123.     Reiser M.: The Oberon System - User Guide and Programmer's Manual.
  124.     Addison-Wesley, 1991, ISBN 0-201-54422-9
  125. Commands
  126. Instead of calling programs, an Oberon user executes commands. A command is simply a parameterless procedure exported from a module. It is written as Modulename.Procedurename (e.g. Edit.Open). A command can be invoked by clicking at it with the middle mouse button wherever it occurs on the screen. When a command is not already on the screen, it can be entered from the keyboard into any text viewer. Users normally collect frequently used commands in a text file to avoid having to re-enter them again and again.
  127.     Examples for commands are Edit.Open which opens a text file for editing or System.Directory which displays some specified files of the directory.
  128. This document can be printed by executing the command:
  129.     Edit.Print QuickDraw Welcome.Text ~
  130. The Mouse
  131. Oberon assumes a three button mouse where the buttons have the following meaning:
  132. On systems with a one or two button mouse the keyboard can be used to simulate the missing buttons:
  133. If you use PowerMac Oberon frequently, you might want to get a three_button mouse, of which there are now several models available for the Macintosh (we use the Logitech MouseMan for the Macintosh). Just configure it so that the left button generates a mouse click, the middle button emulates the "control" key on the keyboard and the right button the "option" button, and you will have a true Oberon mouse.
  134. Note: There is also an Oberon version for a one button mouse. The single mouse button can be used there to set the caret, select text and scroll. The middle mouse button is only used to execute commands and to handle popup menus (see below). This version also provides scrollbars as on the Macintosh or under Windows. In order to use the one button version, simply rename the file TextFrames1.Obj to TextFrames.Obj.
  135. Mouse Buttons and Special Keys
  136. Point Button = ML
  137. Sets the Caret: point to the desired character position with the mouse and click ML.
  138. Execute Button = MM
  139. Executes a command M.P: point to the command with the mouse and click MM.
  140. Select Button= MR
  141. Selects a contiguous stretch of text: move the mouse from the first character to the last character of the desired selection while holding down the MR button (this is called "dragging" the mouse).
  142.     For selecting large portions of text that don't fit into a viewer, split the viewer by executing the command System.Copy, select the beginning of the text stretch in the upper viewer and the end of the text stretch in the lower viewer.
  143. Cancel
  144. To cancel a mouse command that is just being initiated press all three mouse buttons simultaneously.
  145. Mark Key = F1 key for PCs and PowerMacs, Enter key for Macs
  146. Set the star-shaped marker: move the mouse to the desired location and press the Mark key.
  147. Neutralize Key = ESC key
  148. Remove all marks and selections on the screen by pressing the Neutralize key.
  149. Viewers
  150. The Oberon screen is divided into a user track (for displaying and editing documents) and a system track (for system messages and command input). Each track may contain several viewers (windows). Viewers consist of a title bar showing menu commands or popup menus (see below) and a contents area where text or graphics is displayed.
  151. If you work on a small screen (15" or less) you may prefer having just one track instead of two so that the viewers become larger. Execute the command Screen.OneTrack to get to the following layout:
  152. You can get back to the previous layout by executing Screen.TwoTracks.
  153. The title bar of a viewer always contains the name of the viewer (i.e. the name of the document shown in the viewer) and a list of commands and popup menus (see below).
  154. Resizing a Viewer = ML
  155. Extend or reduce a viewer by clicking ML in its title bar and dragging the viewer top to a new location.
  156. Moving a Viewer = ML followed by MM
  157. Move a viewer to another track by interclicking MR during the Resize operation.
  158. Text Editing
  159. Edit.Open <filename>
  160. Opens a new viewer and displays the contents of a file. If the file does not exist, an empty viewer will be opened.
  161. Edit.Store
  162. When activated from a menu, it stores the contents of the viewer into a text file with the same name as the viewer name. A file may be saved under a different name simply by editing the viewer name in the menu and executing Edit.Store.
  163. CAUTION: CLOSING A VIEWER WITH System.Close WILL NOT SAVE THE TEXT IN THE VIEWER.
  164. Text can be inserted from the keyboard at the position of the caret (the hook that marks the insert position). The caret can be set with the ML button. Text can be deleted with the backspace key or the del key. For copying and deleting larger portions of text the following commands can be used:
  165.     Clipboard.Cut (command-X on a Mac, F5 on a PC)
  166.         Deletes the selected text and after having copied it to the clipboard
  167.     Clipboard.Copy (command-C on a Mac, F6 on a PC)
  168.         Copies the selected text to the clipboard
  169.     Clipboard.Paste (command-V on a Mac, F7 on a PC)
  170.         Inserts the clipboard contents at the Caret position
  171. For advanced users there are short-cuts invoked by interclicking a mouse button while another button is still pressed. These shortcuts can significantly speed up editing.
  172.     Copy to Caret = MR followed by MM
  173.         The selected text is copied to the caret position.
  174.     Copy from Selection = ML followed by MM
  175.         The most recent selection is copied to the new caret position.
  176.     Delete = MR followed by ML
  177.         The selected text is deleted.
  178. The cursor keys can be used to move the caret to the left, to the right, one line up, and one line down.
  179. Scrolling
  180. In the Oberon System, scrolling is rather different from what you might be used to in other systems. Although it is unfamiliar in the beginning it offers faster and more exact scrolling to experienced users.
  181.     Move the mouse into the scroll bar to the left of the text and press one of the mouse buttons to execute one of the following actions
  182.     Scroll Forward = ML
  183.         The line to which the mouse points will be moved to the top
  184.         of the viewer.
  185.     Scroll Backward = MR
  186.         The line to which the mouse points will be moved to the
  187.         bottom of the viewer.
  188.     Absolute Positioning = MM
  189.         Scroll to a part of the document that corresponds to the
  190.         relative position of the mouse in the scroll bar.
  191.     Scroll Forward to Top = MM followed by MR
  192.         (interclick MR during Absolute Positioning)
  193.         Scroll to the beginning of the document.
  194.     Scroll Backward to Bottom = MM followed by ML
  195.         (interclick the ML during Absolute Positioning)
  196.         Scroll to the end of the document.
  197. Advanced Commands
  198. Copy attributes at the caret to the selection = ML followed by MR
  199.     The font and style at the caret position is applied to the selection.
  200. Select to beginning of line
  201. Click MR twice at the same character. You may keep dragging from the second click in order to select multiple lines.
  202. Unload module prior to command execution = MM followed by ML
  203. The command's module will be re-loaded from disk before the command is executed.
  204. Open new edit viewer = MM followed by MR
  205. A new viewer is opened with the file with name clicked on.
  206. Command Arguments
  207. There are several methods to specify the arguments of commands. We show them for Compiler.Compile as an example.
  208. Compiler.Compile P1.Mod P2.Mod ... ~
  209. The arguments follow immediately after the command and are terminated with a "~" (a tilde). Here the command compiles the files P1.Mod, P2.Mod, etc.
  210. Compiler.Compile ^
  211.     The arguments are taken from the most recent text selection.
  212. Compiler.Compile *
  213. The argument is the contents of the marked viewer (the viewer that contains the star-shaped marker, set with the Mark key)
  214. Using commands with the "^" suffix is especially convenient. To open a text file just select its name and click "Edit.Open ^". To inspect a module interface just select the module name and click "Browser.ShowDef ^". It is sufficient to select the first character of the argument.
  215. Popup Menus
  216. The system tool contains a number of grey buttons like the following one:
  217. These are popup menus. Click at them with the MM button and select a command by dragging the mouse. Try it now.
  218.     You can edit the menu texts by clicking MM followed by MR at the popup menu. A text viewer will be opened in which you can add more commands or delete commands with the text editor. Execute the command PopupElems.Update from the menu bar of this viewer to make the modifications visible in the popup menu.
  219.     A new popup menu may be inserted at the caret position with the command PopupElems.Insert "<menu name>".
  220. The menu bar of viewers also may contain popup menus like the following:
  221. A popup menu like this may be inserted at the caret position with the command PopupElems.InsertMenu "<menu name>".
  222.     You can configure the menu bars of your system by editing the contents of the following text files according to your needs.
  223. Edit.Menu.Text
  224.     Text to be shown in menu bars of viewers opened with Edit.Open
  225. System.Menu.Text
  226.     Text to be shown in menu bars of viewers opened with System.Open
  227. Log.Menu.Text
  228.     Text to be shown in the menu bar of the Log Viewer
  229. Extensibility
  230. The main feature of Oberon is extensibility. A user can add an arbitrary number of commands to the system at any time simply by writing a module and compiling it. There is no need to install the command (it may be activated as soon as compilation is completed) and modules containing commands are not added to the system until an actual call is made. Commands which are frequently used together are often collected in a text document. By displaying this document in a window the whole set of commands is immediately at hand. Such text documents are called Tools in Oberon (e.g., Edit.Tool). They play the role of editable menus.
  231. Even the basic resources of the system are extensible. For example, the editor you are just using supports "live" extensions of characters which are sent messages when editing operations occur. The moving objects that you see below are such "extensions" of characters. They float in the text just as characters, and may be cut, copied and pasted.
  232. Documentation
  233. A lot of online documentation is supplied in this distribution. Execute the commands below (by pressing and releasing the Execute Button over it) for viewing  the following texts:
  234. Basic documentation:
  235.     Edit.Open Oberon.Guide.Text    General concepts of Oberon
  236.     Edit.Open Edit.Guide.Text    Text editor
  237.     Edit.Open MacOberonV4.Text    PowerMac Oberon details
  238.     Edit.Open Oberon2.Report.Text    Oberon-2 language report
  239. More documentation:
  240.     Edit.Open Debug.Text    Debugger documentation
  241.     Edit.Open Dialogs.Text    Configurable dialog boxes
  242.     Edit.Open Draw.Text    A simple graphics editor
  243.     Edit.Open Kepler.Text    An advanced graphics editor
  244.     Edit.Open Elem.Guide.Text    Elements floating in texts
  245.     Edit.Open Edit.Programming.Text    How to program text elements
  246.     Edit.Open Toolbox.Interface.Text    How to acces the Mac toolbox
  247. A couple of books have been written on the design, use and implementation of Oberon:
  248.     N. Wirth and M. Reiser:
  249.     Programming in Oberon.Steps beyond Pascal and Modula_2.
  250.     Addison Wesley, 1992, ISBN 0-201-56543-9.
  251.     Tutorial for the Oberon programming language and concise language 
  252.     reference.
  253.     M. Reiser: The Oberon System. User Guide and Programmer's Manual.
  254.     Addison Wesley, 1991, ISBN 0-201-54422-9.
  255.     User manual for the programming environment and reference for the 
  256.     standard module library.
  257.     N. Wirth and J. Gutknecht:
  258.     Project Oberon. The Design of an Operating System and Compiler.
  259.     Addison Wesley, 1992, ISBN 0-201-54428-8.
  260.     Program listings with explanations for the whole Oberon system, 
  261.     including the compiler for NS32000.
  262.     H. M
  263. ssenb
  264. ck: Object-Oriented Programming in Oberon-2. 
  265.     Springer-Verlag, 1993, ISBN 3-540-56411-X.
  266.     (German: Objektorientierte Programmierung in Oberon-2,
  267.     Springer-Verlag, 1993, ISBN 3-540-55690-7)
  268.     Foundations and applications of OOP with a realistic case study in source     code.
  269. Portability
  270. Oberon is also available for IBM PC (MS-Windows and Windows NT), Apple Macintosh (68020 and PowerMac), Sun SPARCStation, DECStation, IBM RS6000, Silicon Graphics, Amiga, and HP workstations. The Oberon libraries on those machines as well as the document architectures in all implementations are identical. For example, you could open this document on any of the machines mentioned above and see the same moving icon and clocks, despite even the fact that not all of the machines use the same byte ordering.
  271. Availability
  272. The Oberon system for the various platforms can be obtained via anonymous ftp from ftp.inf.ethz.ch (/pub/Oberon) or from oberon.ssw.uni-linz.ac.at (/pub/Oberon).
  273.